1. Field of the Invention
The present invention relates in general to an analog-to-digital converter (ADC), and in particular to an ADC providing a non-uniform quantization step size over its input magnitude range, resulting in a non-linear relationship between the magnitude of its input analog signal and the value of its digital output data.
2. Description of Related Art
FIG. 1 illustrates a conventional digitizer 8 including an analog-to-digital converter (ADC) 10 for producing 255-bit thermometer code (D255 . . . D1) representing the voltage magnitude of an analog input signal (INPUT). In response to each edge of an input clock signal (CLK) a linear thermometer-to-binary code converter 14 converts the 255-bit thermometer code into an 8-bit binary output data OUTPUT representing the INPUT signal magnitude.
ADC 10 includes a voltage divider 12 formed by a series of 256 resistors of similar magnitude R linked between reference voltages +VREF and xe2x88x92VREF to generate a set of 255 reference voltages V1-V255 that are uniformly distributed within the range [xe2x88x92VREF, +VREF). Each of a set of 255 comparators C1-C255 compares a corresponding one of reference voltages V1-V255 to the INPUT signal voltage and generates a corresponding one of data bits D1-D255. Each voltage comparator C1-C255 drives its output data bit to a xe2x80x9c1xe2x80x9d logic state when the INPUT signal voltage exceeds the comparators input reference voltage V1-V255 and drives its output data bit to a xe2x80x9c0xe2x80x9d logic state when the INPUT signal voltage is lower than its reference voltage. Converter 14 converts the 255-bit thermometer code formed by data bits D1-D255 into a corresponding 8-bit binary code ranging in value from 0 to 255.
Table I below lists values of the 255-bit thermometer code (D255... D1) and the 8-bit binary code for various voltage ranges of the INPUT signal when, for example, +VREF=+1 volt and xe2x88x92VREF=xe2x88x921 volt.
As illustrated in Table I, ADC 10 xe2x80x9cquantizesxe2x80x9d the INPUT signal voltage since each value of its OUTPUT data represents a range of INPUT signal voltages rather than a discrete voltage. ADC 10 provides xe2x80x9cuniform quantizationxe2x80x9d since the voltage ranges represented by each thermometer code data value are of similar width. In the example illustrated in Table I, the width (xe2x80x9cquantization step sizexe2x80x9d) of each range is a uniform {fraction (1/128)} volt. Thus with +VREF and xe2x88x92VREF set at +1 and xe2x88x921 volts, the thermometer code output of ADC 10 and the 8-bit OUTPUT data of converter 14 can representing the magnitude of the INPUT signal with {fraction (1/128)} volt resolution.
As discussed below, when a periodic CLK signal causes converter 14 to produce a sequence of OUTPUT data values in response to a time-varying INPUT signal, that data sequence is a somewhat distorted representation of the time-varying behavior of the INPUT signal due to the effects of xe2x80x9cclipping noisexe2x80x9d and xe2x80x9cquantization noisexe2x80x9d.
Clipping Noise
With xe2x88x92VREF and +VREF set, for example, to xe2x88x921 volt and +1 volt, ADC 10 has a [xe2x88x921,+1] voltage range. When the INPUT signal magnitude occasionally swings higher than +1 volt, the resulting digitizer OUTPUT data value (11111111) will misrepresent the INPUT signal magnitude as being within the range +127/128 to +1 volt. Similarly, when the INPUT signal magnitude occasionally swings below xe2x88x921 volt, the resulting binary OUTPUT data value (00000000) will misrepresent the INPUT signal magnitude as being within the range xe2x88x92127/128 to xe2x88x921 V. Hence whenever the INPUT signal magnitude swings beyond the range of the ADC, the OUTPUT data sequence will be a xe2x80x9cclippedxe2x80x9d representation of the INPUT signal having flattened peaks. Thus ADC 10 introduces xe2x80x9cclipping noisexe2x80x9d into the OUTPUT data whenever the INPUT signal magnitude goes outside the range defined by xe2x88x92VREF and +VREF.
One way to avoid clipping noise is to set the ADC""s voltage range at least as wide as the full range of the INPUT signal. For example FIG. 2 charts the relative probability P of each possible magnitude VIN of an INPUT signal when the INPUT signal""s magnitude is evenly distributed in time within voltage range [xe2x88x921, +1] and never goes outside that range. Obviously, if xe2x88x92VREF and +VREF are set to xe2x88x921 V and +1 V, the OUTPUT data sequence will exhibit no clipping noise. Hence the range [xe2x88x921, +1] is a good choice for ADC 10 when the INPUT signal has the uniform magnitude probability distribution of FIG. 2.
However not all signals have magnitude probability distributions that are as uniform and conveniently limited as that of FIG. 2. Signal magnitudes produced by many processes are xe2x80x9cnormally distributedxe2x80x9d about some mean voltage. FIGS. 3 and 4 chart the probability P of each possible magnitude VIN of two ADC example INPUT signals, each having a magnitude normally distributed about a mean of 0 volts. The standard deviation "sgr" of a normal distribution is measure of distribution""s xe2x80x9cflatnessxe2x80x9d. A signal having a normally distributed magnitude about a mean of 0 voltage will range between +"sgr" and xe2x88x92"sgr" volts about 63.8% of the time, and will range between +2"sgr" and xe2x88x922"sgr" volts about 95.4% of the time. FIGS. 3 and 4 indicate that the probability of occurrence is higher for INPUT signal magnitudes residing with a xe2x80x9chigh probabilityxe2x80x9d portion [xe2x88x92"sgr", +"sgr"] of the analog signal""s range than for INPUT signal magnitudes residing in a xe2x80x9clow probabilityxe2x80x9d portion of the range [xe2x88x922"sgr", xe2x88x92"sgr"] or [+"sgr", +2"sgr"]. Note that since the magnitude probability distribution of FIG. 3 has a larger "sgr" than that of FIG. 4, the magnitude of a signal having the distribution of FIG. 3 will swing outside the ADC""s [xe2x88x921, +1] volt range much more often than a signal having the distribution of FIG. 4.
Note also that the high positive and negative voltages of a normally distributed signal are not limited as they are for a signal having the magnitude probability distribution illustrated in FIG. 2. Such a signal can have a very high negative or positive voltage, but not very often. Thus when the INPUT signal is a normally distributed signal, the choice of its voltage range [xe2x88x92VREF, +VREF] becomes problematic. If we make the ADC range large, we can reduce the probability that the signal will swing outside the ADC""s range and therefore reduce clipping noise. But in doing so we also reduce the ADC""s resolution, which as discussed below, will increase quantization noise.
Quantization Noise
xe2x80x9cQuantization noisexe2x80x9d arises because the ADC""s output thermometer code does not have infinite resolution; it quantizes the INPUT signal magnitude by representing it as being within a particular voltage range rather than as a discrete voltage level. Quantization noise causes distortion in the ADC""s OUTPUT data sequence that is a function of the magnitude of the ADC""s resolution, or quantization step xcex94. In general the uniform quantization step xcex94 for a B-bit ADC (i.e., an ADC producing binary OUTPUT data having B-bits or the 2Bxe2x88x921 bit thermometer code equivalent thereof) is
66 =2xe2x88x92BVRxe2x80x83xe2x80x83[1]
where VR is the range of the ADC. In the example ADC 10 of FIG. 1, where VR=2 volts and B=8 equation [1] yields a quantization step size xcex94 of {fraction (1/128)} volts, consistent with the uniform step size shown in Table I.
The xe2x80x9cmean square quantization noisexe2x80x9d (MSQN) of an ADC is a commonly employed measure of the ADC""s quantization noise, and is a function of the ADC""s quantization step xcex94 and of the voltage distribution of the signal being digitized. For a signal having the uniform magnitude probability distribution of FIG. 2,
MSQN=xcex942/12.xe2x80x83xe2x80x83[2]
The xe2x80x9cquantization signal-to-noise ratioxe2x80x9d (QSNR) of an ADC, is a measure of the quantization noise in relation to the magnitude of the INPUT signal. In particular, QSNR is the ratio of the mean square magnitude of the INPUT signal divided by the MSQN. Since a signal having the uniform magnitude probability distribution of FIG. 2 has a mean square magnitude of ⅓ volt, its QSNR is
QSNR=(⅓)/[xcex942/12]=4/xcex942.xe2x80x83xe2x80x83[3]
Equation [3] shows that we can increase QSNR (a desirable goal) by reducing quantization step size xcex94. Since the xcex94 of ADC 10 is equal to the ADC""s voltage range [xe2x88x92VREF, +VREF] divided by the number (255) of reference voltages V1-V255, we can decrease xcex94 and therefore increase QSNR by decreasing the ADC""s voltage range. However when we reduce the ADC""s range below that of the INPUT signal having the uniform magnitude probability distribution illustrated in FIG. 2, ADC 10 begins to clip the INPUT signal. Thus the advantage of reducing quantization noise can be offset by the disadvantage of increasing clipping noise.
A signal having a normally distributed magnitude as illustrated in FIG. 3 or FIG. 4, will have a mean square magnitude of 12"sgr"2. Thus when digitizing a signal having a normal magnitude distribution, ADC 10 will have a QSNR of
QSNR=12"sgr"2/xcex942.xe2x80x83xe2x80x83[4]
Equation [4] indicates that a signal having a relatively flat normal magnitude probability distribution (high "sgr") as illustrated in FIG. 3, results in a high QSNR, which is desirable. However, as seen by comparing FIGS. 3 and 4, a higher "sgr" (FIG. 3) means that the ADC INPUT signal magnitude more frequently goes outside the ADC""s range and that the ADC will therefore add more clipping noise to its output data.
As mentioned above, we can reduce the clipping noise generated by ADC 10 by increasing the ADC""s voltage range. But in doing so we also increase the quantization step xcex94 and therefore decrease the ADC""s QSNR, an undesirable effect. Thus choosing a reference voltage range [xe2x88x92VREF,+VREF] when ADC 10 is digitizing a signal having a normal magnitude probability distribution involves a trade-off between the effects of quantization and clipping noise.
One way to greatly reduce quantization noise without increasing the amount of clipping noise is to increase the ADC""s resolution, thereby decreasing quantization step xcex94 in equation [4]. For example, since the width of the quantization step of a 9-bit ADC is one half that of an 8-bit ADC, equation [4] tells us that a 9-bit ADC will have a four times higher QSNR than an 8-bit ADC given similar normally distributed INPUT signal. But to turn the 8-bit ADC 10 of FIG. 1 into a 9-bit ADC, we must double the number of its resistors and comparators. Hence increasing the ADC""s resolution is a heavy price to pay for increasing the ADC""s signal-to-noise ratio.
What is needed is a way to improve an ADC""s signal-to-noise ratio when digitizing a signal having a non-uniformly distributed magnitude without also increasing its clipping noise, and without having to substantially increase the ADC""s component count.
The invention relates to a method and apparatus for generating digital data representing the magnitude of an analog signal having a voltage that varies with time over some voltage range of interest. The invention is particularly well-suited for digitizing an analog signal having a non-uniform voltage probability distribution in which the probability of occurrence of any signal voltage residing within a xe2x80x9chigh probabilityxe2x80x9d portion of the range of interest is higher than the probability of occurrence of a signal voltage residing within a xe2x80x9clow probabilityxe2x80x9d portion of the range of interest.
In accordance with one aspect of the invention, the apparatus generates a set of reference signals having voltages that are non-uniformly distributed over the range of interest so that reference signal voltages within high probability portions of the range are more closely spaced than reference signal voltages residing within low probability portions of the range of interest.
The apparatus compares the analog signal voltage to the reference signal voltages to determine which two reference signal voltages most closely bound the analog signal voltage. The apparatus produces digital output data represent the magnitude of the analog signal as lying within the range of bounded by two reference signal voltages.
Since the reference signal voltages are most closely spaced within the high probability portions of the analog signal""s voltage range, the digital data represents the analog signal magnitude with higher resolution when the analog signal resides within a high probability portion of its range than when the magnitude resides outside that portion of its range.
As a result of the non-uniform distribution of the reference voltages, the signal-to-noise ratio of the ADC""s output data is greater than that of prior art ADCs employing a similar number of reference voltages that are uniformly distributed over the range of interest.
It is accordingly an object of the invention to provide an apparatus for digitizing an analog signal having a magnitude that is non-uniformly distributed over its range.
The claims appended to this specification particularly point out and distinctly claim the subject matter of the invention. However those skilled in the art will best understand both the organization and method of operation of what the applicant(s) consider to be the best mode(s) of practicing the invention, together with further advantages and objects of the invention, by reading the remaining portions of the specification in view of the accompanying drawing(s) wherein like reference characters refer to like elements.